package com.ruoyi.fire.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.fire.domain.DGatewayMessage;
import com.ruoyi.fire.domain.dto.UplinkDataDTO;

import java.util.List;
import java.util.Set;

/**
 * @PackageName: com.iot.fire.service
 * @ClassName: IDGatewayMessageService
 * @Description:
 * @Author: czl
 * @Date: 2025/11/10 22:56
 */
public interface IDGatewayMessageService extends IService<DGatewayMessage> {

    /**
     * 根据设备编号查询列表
     * @param deviceNo 设备编码
     * @return
     */
    List<DGatewayMessage> selectByDeviceNo(String deviceNo);

    /**
     * 根据设备编号查询列表
     * @param deviceNo 设备编码
     * @return
     */
    DGatewayMessage selectLastOneByDeviceNo(String deviceNo);

    /**
     * 根据设备编号查询列表
     * @param gatewayDeviceNos 设备编码
     * @return
     */
    List<DGatewayMessage> selectLastOneByDeviceNos(Set<String> gatewayDeviceNos);

    /**
     * 设备上行数据
     * @param uplinkDataDTO 设备编号
     * @return
     */
    Page<DGatewayMessage> uplinkData(UplinkDataDTO uplinkDataDTO);
}
